#include<deque> 
#include<vector>


template <class T,class Container=vector<T>>
  class Stack
  {
  public:
	  void push(const T& x)
	  {
		  _con.push_back(x);
	  }
	  void pop()
	  {
		  _con.pop_back();
	  }
	size_t size()
	  {
		return _con.size();
	  }
	const T& top()const
	{
		return _con.back();
	}
	bool empty()
	{
		return _con.empty();
	}
  private:
	  Container _con;
  };